package com.yingxue.lesson.service;

import com.yingxue.lesson.entity.SysPermission;
import com.yingxue.lesson.vo.req.PermissionAddReqVO;
import com.yingxue.lesson.vo.req.permissionVo.PermissionUpdateReqVO;
import com.yingxue.lesson.vo.resp.PermissionRespNodeVO;
import org.springframework.stereotype.Service;

import java.util.List;


public interface PermissionService {

    List<SysPermission> selectAll();

    List<PermissionRespNodeVO> selectAllMenuByTree();

    SysPermission addPermission(PermissionAddReqVO vo);

    //查询菜单权限 树列表 到菜单
    List<PermissionRespNodeVO> permissionTreeList(String userId);

    //查询所有菜单权限 树列表 到按钮
    List<PermissionRespNodeVO> selectAllTree();

    //更新菜单权限
    void updatePermission(PermissionUpdateReqVO vo);

    //删除菜单权限
    void deleted(String permissionId);

    //通过 userId 查询 菜单权限
    List<String> getPermissionByUserId(String userId);

}
